The present invention relates generally to digital audio broadcasting (DAB) and other techniques for transmitting information in a communication system.
Proposed systems for providing digital audio broadcasting (DAB) in the FM radio band are expected to provide near CD-quality audio, data services, and more robust coverage than existing analog FM transmissions. However, until such time as a transition to all digital DAB can be achieved, broadcasters require an intermediate solution in which the analog and digital signals can be transmitted simultaneously within the same licensed band. Such systems are typically referred to as hybrid, in-band on-channel (HIBOC) DAB systems, and are being developed for both the FM and AM radio bands. In order to prevent significant distortion in conventional analog FM receivers, the digital signal in a typical FM HIBOC DAB system is, e.g., transmitted in two sidebands, one on either side of the analog FM host signal.
Perceptual audio coding techniques are particularly attractive for FM band and AM band transmission applications such as HIBOC DAB. Perceptual audio coding devices, such as the perceptual audio coder (PAC) described in D. Sinha, J. D. Johnston, S. Dorward and S. R. Quackenbush, xe2x80x9cThe Perceptual Audio Coder,xe2x80x9d in Digital Audio, Section 42, pp. 42-1 to 42-18, CRC Press, 1998, which is incorporated by reference herein, perform audio coding using a noise allocation strategy whereby for each audio frame the bit requirement is computed based on a psychoacoustic model. PACs and other audio coding devices incorporating similar compression techniques are inherently packet-oriented, i.e., audio information for a fixed interval (frame) of time is represented by a variable bit length packet. Each packet includes certain control information followed by a quantized spectral/subband description of the audio frame. For stereo signals, the packet may contain the spectral description of two or more audio channels separately or differentially, as a center channel and side channels (e.g., a left channel and a right channel).
PAC encoding as described in the above-cited reference may be viewed as a perceptually-driven adaptive filter bank or transform coding algorithm. It incorporates advanced signal processing and psychoacoustic modeling techniques to achieve a high level of signal compression. In brief, PAC encoding uses a signal adaptive switched filter bank which switches between a Modified Discrete Cosine Transform (MDCT) and a wavelet transform to obtain compact description of the audio signal. The filter bank output is quantized using non-uniform vector quantizers. For the purpose of quantization, the filter bank outputs are grouped into so-called xe2x80x9ccodebandsxe2x80x9d so that quantizer parameters, e.g., quantizer step sizes, are independently chosen for each codeband. These step sizes are generated in accordance with a psychoacoustic model. Quantized coefficients are further compressed using an adaptive Huffman coding technique. PAC employs a total of 15 different codebooks, and for each codeband, the best codebook may be chosen independently. For stereo and multichannel audio material, sum/difference or other form of multichannel combinations may be encoded.
PAC encoding formats the compressed audio information into a packetized bitstream using a block sampling algorithm. At a 44.1 kHz sampling rate, each packet corresponds to 1024 input samples from each channel, regardless of the number of channels. The Huffman encoded filter bank outputs, codebook selection, quantizers and channel combination information for one 1024 sample block are arranged in a single packet. Although the size of the packet corresponding to each 1024 input audio sample block is variable, a long-term constant average packet length maybe maintained as will be described below.
Depending on the application, various additional information may be added to the first frame or to every frame. For unreliable transmission channels, such as those in DAB applications, a header is added to each frame. This header contains critical PAC packet synchronization information for error recovery and may also contain other useful information such as sample rate, transmission bit rate, audio coding modes, etc. The critical control information is further protected by repeating it in two consecutive packets.
It is clear from the above description that the PAC bit demand is derived primarily by the quantizer step sizes, as determined in accordance with the psychoacoustic model. However, due to the use of Huffman coding, it is generally not possible to predict the precise bit demand in advance, i.e., prior to the quantization and Huffman coding steps, and the bit demand varies from frame to frame. Conventional PAC encoders therefore utilize a buffering mechanism and a rate loop to meet long-term bit rate constraints. The size of the buffer in the buffering mechanism is determined by the allowable system delay.
In conventional PAC bit allocation, the encoder makes a request for allocating a certain number of bits for a particular audio frame to a buffer control mechanism. Depending upon the state of the buffer and the average bit rate, the, buffer control mechanism then returns the maximum number of bits which can actually be allocated to the current frame. It should be noted that this bit assignment can be significantly lower than the initial bit allocation request. This indicates that it is not possible to encode the current frame at an accuracy level for perceptually transparent coding, i.e., as implied by the initial psychoacoustic model step sizes. It is the function of the rate loop to adjust the step sizes so that bit demand with the modified step sizes is below, and close to, the actual bit allocation. The rate loop operates based on psychoacoustic principles to minimize the perception of excess noise.
Despite the above-described advances in DAB systems which utilize PAC encoding, a need exists for further improvements in techniques for transmitting digital audio and other information, so as to provide enhanced performance capabilities in these and other systems.
The present invention provides methods and apparatus for configuring a channel code, e.g., an outer channel code, in digital audio broadcasting (DAB) systems or other types of digital communication systems, so as to provide enhanced performance relative to conventional systems.
In accordance with an illustrative embodiment of the invention, digital information is encoded using an outer channel code, e.g., a cyclic redundancy code (CRC), and an inner channel code, e.g., a complementary punctured pair convolutional (CPPC) code. Multiple code words of the outer code are associated with a given packet of the digital information, in accordance with a particular outer code configuration, so as to provide partial error flagging for different portions of the given packet.
The digital information may be encoded compressed audio information in the form of a bitstream including a series of packets generated by a PAC encoder or other suitable encoder. Error flags generated as a result of the partial error flagging may be supplied to a PAC decoder and used to trigger an error mitigation algorithm in the PAC decoder. The PAC encoder is also operative to interact with an outer code encoder to determine a bit allocation for transmission of the packets at a particular bit rate, based at least in part on the outer code configuration.
Examples of outer code configurations in accordance with the invention include, e.g., multiple code words arranged sequentially within a given packet, and one or more nested levels of code words within a given packet. Combinations of these configurations can also be used, e.g., the outer code configuration may include at least one level of nested code words in combination with at least one additional sequentially-arranged code word. As another example, the outer code configuration may include a plurality of sequentially-arranged fixed-length code words followed or preceded by a single variable-length code word.
Advantageously, in each of these improved configurations, partial error flagging is provided, and the outer code structure can be made synchronous to the PAC frame. Furthermore, the overhead for the outer code may be adapted to individual PAC packets, i.e., less overhead may be provided for very short packets and larger overhead for more critical long packets. These configurations thus allow the outer code bits to be better matched to the criticality of the audio information, such that improved performance can be provided without increasing outer code overhead.
Other types of outer codes that can be used in conjunction with the invention include, e.g., RS codes, BCH codes and other block codes, other cyclic codes, as well as non-cyclic shortened codes.
The invention can be applied to other types of digital information, including, for example, data, video and image information. In addition, the invention may be implemented in numerous applications other than FM and AM HIBOC DAB systems, such as Internet and satellite broadcasting systems, systems for simultaneous delivery of audio and data, etc. Moreover, the invention is applicable not only to perceptual coders but also to other types of source encoders using other compression techniques over a wide range of bit rates.